﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SqlClient;
using System.Data;

namespace Proyecta.Data.DAO
{
    public class EjemploCategoriasDAO
    {
        conexion.SQL con = new conexion.SQL();
        conexion.SQL con2 = conexion.SQL.getSingleton();
        DataSet ds = null;
        string sqlsentencia;
        SqlCommand sqlcom;
        SqlDataAdapter Datos;

        public DataSet MostrarCategorias(object obj)
        {
            BO.CategoriasBO oCategoria = (BO.CategoriasBO)obj;
            sqlcom = new SqlCommand();
            Datos = new SqlDataAdapter();
            ds = new DataSet();
            sqlcom.Connection = con.conectar();
            con.abrir_conexion();
            sqlsentencia = "SELECT [idCategoria],[Categoria]  FROM [Proyecta].[dbo].[Categorias] where Categoria like '%" + oCategoria.Categoria + "%'";
            sqlcom.CommandText = sqlsentencia;
            Datos.SelectCommand = sqlcom;
            Datos.Fill(ds);
            con.cerrar_conexion();
            return ds;
        }


        public int insertarCategoria(object obj)
        {

            BO.CategoriasBO oCategoria = (BO.CategoriasBO)obj;
            sqlcom = new SqlCommand();
            ds = new DataSet();
            sqlcom.Connection = con.conectar();
            con.abrir_conexion();
            sqlsentencia = "INSERT INTO [Proyecta].[dbo].[Categorias]  ([Categoria])    VALUES ('" + oCategoria.Categoria + "')";
            sqlcom.CommandText = sqlsentencia;
            return sqlcom.ExecuteNonQuery();
        }

        public int modificarCategoria(object obj)
        {
            BO.CategoriasBO oCategoria = (BO.CategoriasBO)obj;
            sqlcom = new SqlCommand();
            ds = new DataSet();
            sqlcom.Connection = con.conectar();
            con.abrir_conexion();
            sqlsentencia = "UPDATE [Proyecta].[dbo].[Categorias]   SET [Categoria] = '" + oCategoria.Categoria + "'  WHERE idCategoria=" + oCategoria.idCategoria + "";
            sqlcom.CommandText = sqlsentencia;
            return sqlcom.ExecuteNonQuery();
        }

        //Método para eliminar, hace falta definir se realmente se eliminaran datos de la DB o solo se modifican su status a eliminado???

    }
}
